package com.itliang.core.result;

/**
 * 响应状态码和说明
 *
 * @author liangzhuoyuan
 */
public enum CodeEnum {

    SUCCESS(ResponseCode.SUCCESS, "success"),

    PARAMS_ERROR(ResponseCode.LOGIN_FAIL, "请求参数错误"),
    /**
     * 登录过期
     */
    NOT_LOGIN_ERROR(ResponseCode.NOT_LOGIN_ERROR, "登录过期，请重新登录"),
    /**
     * 无权限
     */
    NO_AUTH_ERROR(40300, "无操作权限,请联系管理员"),

    NOT_FOUND_ERROR(40400, "请求数据不存在"),
    FORBIDDEN_ERROR(40300, "禁止访问"),
    DELETE_MENU_ERROR(40500, "请先删除子菜单"),


    /**
     * 登录失败
     */
    LOGIN_FAIL(ResponseCode.LOGIN_FAIL, "认证失败"),

    /**
     * 账号不存在
     */
    ACCOUNT_NOT_EXIST(ResponseCode.LOGIN_FAIL, "账号不存在"),

    /**
     * 账号或密码错误
     */
    ACCOUNT_PASSWORD_ERROR(ResponseCode.LOGIN_FAIL, "账号或密码错误"),

    /**
     * 账号已禁用
     */
    ACCOUNT_STOP(ResponseCode.LOGIN_FAIL, "该账号已禁用，请联系管理员"),

    SYSTEM_ERROR(50000, "系统内部异常"),
    OPERATION_ERROR(50001, "操作失败");

    /**
     * 状态码
     */
    private final int code;

    /**
     * 信息
     */
    private final String message;

    CodeEnum(int code, String message) {
        this.code = code;
        this.message = message;
    }

    public int getCode() {
        return code;
    }

    public String getMessage() {
        return message;
    }

}
